home *** CD-ROM | disk | FTP | other *** search
/ MacWorld 1999 January - Disc 2 / Macworld (1999-01) (Disk 2).dmg / Serious Demos / Symbolic Composer 4.2 / Environment / Projects / Examples / More Examples / Using MIDI tempo maps < prev    next >
Text File  |  1998-10-26  |  1KB  |  53 lines

  1. ; This demo shows how to use MIDI event tempos 
  2.  
  3. (def-symbol
  4.    piano1 '(a b c d e f g h i j k l m n)
  5.    piano2 (reverse (symbol-of piano1))
  6. )
  7.  
  8. (def-length
  9.    piano1 '((1/16) (1/8t))
  10.    piano2 '((1/16) (1/8t))
  11. )
  12.  
  13. (def-duration
  14.    piano1 '(1/2 1/4 1/8)
  15.    piano2 '(1/4 1/8 1/2)
  16. )
  17.  
  18. (def-tonality
  19.    piano1 (activate-tonality (pentamajor c 4) (pentamajor d# 4))
  20.    piano2 (activate-tonality (pentamajor c 5) (pentamajor d# 5))
  21. )
  22.  
  23. ; To make MIDI tempos write first the points of tempo
  24. ; changes. This is done within def-zone:
  25.  
  26. (def-zone
  27.    tempo '(1/1 1/1 1/1 1/1 1/1 1/1)
  28.    piano1 '(2/1 2/1 1/1 1/1)
  29.    piano2 '(2/1 2/1 1/1 1/1)
  30. )
  31.  
  32. ; Next you have to write a default tempo pattern. Tempo pattern can 
  33. ; have less, equal or more elements than there are tempo change 
  34. ; points. If there are less, then this pattern is repeated for all 
  35. ; tempo changes. All instruments will use this tempo.
  36.  
  37. (def-tempo '(120 140 200 60))
  38.  
  39. ; See the use of def-signature.
  40.  
  41. (def-channel
  42.    piano1 1
  43.    piano2 2
  44. )
  45.  
  46. (midiport :printer)
  47.  
  48. (compile-instrument-p "ccl;output:" "tempoevents"
  49.    piano1
  50.    piano2
  51. )
  52.  
  53.